nanDECK: Custom board gaming

Back in university, me and a couple of friends had a great idea. What if we designed our own card game à la Magic the Gathering? We could do all sorts of funny designs based on our in-jokes and interests, and create exciting game-play loops and mechanics. We would work on the game during breaks and in our spare time, and we titled it Guldda-Mi-Oh1.

Four sample cards of Guldda-Mi-Oh. The text is in Danish.

Four sample cards of Guldda-Mi-Oh. The text is in Danish.

The game was poorly designed but playable. The only reason we managed to ever play it was our tooling, which mainly involved the software nanDECK. This software is a godsend when it comes to making custom board games. I also used this exact software to make a custom game of Guess Who?.

Custom guess who with Pim from Drengene Fra Angora. The blurred faces are our personal friends.

Custom guess who with Pim from Drengene Fra Angora. The blurred faces are our personal friends.

The software

The software nanDECK looks a bit archaic but really does get the job done. In essence, it works by programming the graphics template for the cards which adhere to a spreadsheet.

caption

caption

In the picture above, the left is controls, the middle is code and compilation status while the right side is a preview. Once you are satisfied with the cards look, you can export each one or place them in a PDF for printing. Looking at the code, we see that:

  1. Lines 1-7 define the card type, card size, which units are used (millimeters) and page size for printing.
  2. Lines 9-10 link a file called data.txt which is a comma-separated file has all the necessary information to produce the card. In this case, it is simply the name and the filename of the image to place in the center excluding file extension.
>>> cat data.txt
name, image
Benjamin, benjamin
Magnus Cort, cort
Wozniacki, wozniacki
...
  1. Lines 13-18 define the visual, i.e. the graphics which will appear.
    1. The yellow background is imported from template/yellow.png and made to fill the entire card.
    2. A HTML font object is created for use on the next line and we specify font family, size and color.
    3. A text object is created with the name corresponding to the name field in data.txt using the font just defined.
    4. The corresponding image from the image field is imported and placed in the center.

The software isn’t the most user friendly in the world, but it has accessible documentation and a manual for advanced users. Furthermore, a visual editor exists allowing you to drag-and-drop the various elements, though you still need to link them to your file. I have had bad experiences using this editor, so I refrain from using it.

If you want to get started with nanDECK, check our their [website]. The tutorial I used to learn nanDECK is made by Calvin at Streamlined Gaming and can be found on YouTube.


  1. This is a portmanteau of guld dame and the card game Yu-Gi-Oh. Guld dame is slang for the beer Tuborg Guld, which has a lady (dame) on the front. ↩︎

Published 20. July 2023

Last modified 20. July 2023